package com.force.abril.prevision.download;

import java.util.ArrayList;
import java.util.List;

import org.springframework.stereotype.Component;

import com.force.abril.api.PrevisaoAbrilC;
import com.force.abril.api.SObject;

import br.com.abril.prevision.Prevision;

@Component
public class PrevisionTransformer {

	public PrevisionTransformer() {
	}
/*
	public Prevision toPrevision(PrevisaoAbrilC sfPrevision) {
		Prevision prevision = new Prevision();
		prevision.setSfId(sfPrevision.getId());

		prevision.setValorLiquidoFinal__c(sfPrevision.getValorLiquidoFinalC());
		prevision.setValorLiquidoAuxiliar__c(sfPrevision.getValorLiquidoAuxiliarC());
		prevision.setValorFinal__c(sfPrevision.getValorFinalC());
		prevision.setValorFinalReais__c(sfPrevision.getValorFinalReaisC());
		prevision.setValorFinalFormaPagto3__c(sfPrevision.getValorFinalFormaPagto3C());
		prevision.setValorFinalFormaPagto2__c(sfPrevision.getValorFinalFormaPagto2C());
		prevision.setValorFinalFormaPagto1__c(sfPrevision.getValorFinalFormaPagto1C());
		prevision.setValorBruto__c(sfPrevision.getValorBrutoC());
		prevision.setValorBrutoFinal__c(sfPrevision.getValorBrutoFinalC());
		prevision.setValorBrutoCongelado__c(sfPrevision.getValorBrutoCongeladoC());
		prevision.setValorFinalDescontoFomaPagamento__c(sfPrevision.getValorFinalDescontoFomaPagamentoC());

		prevision.setUn__c(sfPrevision.getUnC());
		prevision.setUltimaEtapaAprovada__c(sfPrevision.getUltimaEtapaAprovadaC());
		prevision.setUnAuxiliarCompartilhamento__c(sfPrevision.getUNAuxiliarCompartilhamentoC());
		prevision.setTipoTabelaPreco__c(sfPrevision.getTipoTabelaPrecoC());
		prevision.setTipoAnuncio__c(sfPrevision.getTipoAnuncioC());
		prevision.setTotalizadorPosicaoNobre__c(sfPrevision.getTotalizadorPosicaoNobreC());
		prevision.setSomatoriaQuantidadePaginas__c(sfPrevision.getSomatoriaQuantidadePaginasC());
		prevision.setSomaValorBrutoTabela__c(sfPrevision.getSomaValorBrutoTabelaC());
		prevision.setSomaPecentualFormaPagamento__c(sfPrevision.getSomaPecentualFormaPagamentoC());
		prevision.setQtdPaginasPagas__c(sfPrevision.getQtdPaginasPagasC());
		prevision.setQtdPaginasNaoPagas__c(sfPrevision.getQtdPaginasNaoPagasC());
		prevision.setDescontoComercial__c(sfPrevision.getDescontoComercialC());
		prevision.setDescontoAgencia__c(sfPrevision.getDescontoAgenciaC());
		prevision.setSetor__c(sfPrevision.getSetorC());
		prevision.setRecordTypeId(sfPrevision.getRecordTypeId());
		prevision.setRazaoSocialAnunciante__c(sfPrevision.getRazaoSocialAnuncianteC());
		prevision.setRazaoSocialAnuncianteAuxiliar__c(sfPrevision.getRazaoSocialAnuncianteAuxiliarC());
		prevision.setRazaoSocialAgencia__c(sfPrevision.getRazaoSocialAgenciaC());
		prevision.setRazaoSocialAgenciaAuxiliar__c(sfPrevision.getRazaoSocialAgenciaAuxiliarC());
		prevision.setProjetoEvento__c(sfPrevision.getProjetoEventoC());
		prevision.setProjetoEventoAuxiliar__c(sfPrevision.getProjetoEventoAuxiliarC());
		prevision.setProdutoAuxiliar__c(sfPrevision.getProdutoAuxiliarC());
		prevision.setProdutoAbril__c(sfPrevision.getProdutoAbrilC());
		prevision.setPrevisaoSemRemuneracao__c(sfPrevision.isPrevisaoSemRemuneracaoC());
		prevision.setPrevisaoPai__c(sfPrevision.getPrevisaoPaiC());
		prevision.setPrevisaoPaiAuxiliar__c(sfPrevision.getPrevisaoPaiAuxiliarC());
		prevision.setPrevisaoMigrada__c(sfPrevision.isPrevisaoMigradaC());
		prevision.setPrevisaoColigadaRemunerada__c(sfPrevision.isPrevisaoColigadaRemuneradaC());
		prevision.setPlataforma__c(sfPrevision.getPlataformaC());
		prevision.setPlataformaProduto__c(sfPrevision.getPlataformaProdutoC());
		prevision.setPercentualRateioSoma__c(sfPrevision.getPercentualRateioSomaC());
		prevision.setPercentualFormaPagamento3__c(sfPrevision.getPercentualFormaPagamento3C());
		prevision.setPercentualFormaPagamento2__c(sfPrevision.getPercentualFormaPagamento2C());
		prevision.setPercentualFormaPagamento1__c(sfPrevision.getPercentualFormaPagamento1C());
		prevision.setPercentualFase__c(sfPrevision.getPercentualFaseC());
		prevision.setPendenciaAprovador9__c(sfPrevision.getPendenciaAprovador9C());
		prevision.setPendenciaAprovador8__c(sfPrevision.getPendenciaAprovador8C());
		prevision.setPendenciaAprovador7__c(sfPrevision.getPendenciaAprovador7C());
		prevision.setPendenciaAprovador6__c(sfPrevision.getPendenciaAprovador6C());
		prevision.setPendenciaAprovador5__c(sfPrevision.getPendenciaAprovador5C());
		prevision.setPendenciaAprovador4__c(sfPrevision.getPendenciaAprovador4C());
		prevision.setPendenciaAprovador3__c(sfPrevision.getPendenciaAprovador3C());
		prevision.setPendenciaAprovador2__c(sfPrevision.getPendenciaAprovador2C());
		prevision.setPendenciaAprovador20__c(sfPrevision.getPendenciaAprovador20C());
		prevision.setPendenciaAprovador1__c(sfPrevision.getPendenciaAprovador1C());
		prevision.setPendenciaAprovador19__c(sfPrevision.getPendenciaAprovador19C());
		prevision.setPendenciaAprovador18__c(sfPrevision.getPendenciaAprovador18C());
		prevision.setPendenciaAprovador17__c(sfPrevision.getPendenciaAprovador17C());
		prevision.setPendenciaAprovador16__c(sfPrevision.getPendenciaAprovador16C());
		prevision.setPendenciaAprovador15__c(sfPrevision.getPendenciaAprovador15C());
		prevision.setPendenciaAprovador14__c(sfPrevision.getPendenciaAprovador14C());
		prevision.setPendenciaAprovador13__c(sfPrevision.getPendenciaAprovador13C());
		prevision.setPendenciaAprovador12__c(sfPrevision.getPendenciaAprovador12C());
		prevision.setPendenciaAprovador11__c(sfPrevision.getPendenciaAprovador11C());
		prevision.setPendenciaAprovador10__c(sfPrevision.getPendenciaAprovador10C());
		prevision.setOwnerId(sfPrevision.getOwnerId());
		prevision.setObservacao__c(sfPrevision.getObservacaoC());
		prevision.setNucleo__c(sfPrevision.getNucleoC());
		prevision.setName(sfPrevision.getName());
		prevision.setMarca__c(sfPrevision.getMarcaC());
		prevision.setMarcaAuxiliar__c(sfPrevision.getMarcaAuxiliarC());
		
		prevision.setIntegradoSucesso__c(sfPrevision.isIntegradoSucessoC());
		
		prevision.setIdProduto__c(sfPrevision.getIDProdutoC());
		prevision.setIdExterno__c(sfPrevision.getIDExternoC());
		prevision.setGrupoProduto__c(sfPrevision.getGrupoProdutoC());
		prevision.setGrupoProdutoOriginal__c(sfPrevision.getGrupoProdutoOriginalC());
		
		prevision.setFormaPagamentoAuxiliar__c(sfPrevision.isFormaPagamentoAuxiliarC());
		prevision.setFormaPagamento3__c(sfPrevision.getFormaPagamento3C());
		prevision.setFormaPagamento2__c(sfPrevision.getFormaPagamento2C());
		prevision.setFormaPagamento1__c(sfPrevision.getFormaPagamento1C());
		prevision.setFase__c(sfPrevision.getFaseC());
		prevision.setEdicao__c(sfPrevision.getEdicaoC());
		
		 prevision.setDataReferenciaAjustada__c       ( sfPrevision.getDataReferenciaAjustadaC().toGregorianCalendar().getTime() );
		 prevision.setDataFechamento__c               ( sfPrevision.getDataFechamentoC().toGregorianCalendar().getTime()         );
		 prevision.setDataFaseRealSVP__c              ( sfPrevision.getDataFaseRealSVPC().toGregorianCalendar().getTime()        );
		 prevision.setDataFaseMercado__c              ( sfPrevision.getDataFaseMercadoC().toGregorianCalendar().getTime()        );
		 prevision.setDataFaseCerto__c                ( sfPrevision.getDataFaseCertoC().toGregorianCalendar().getTime()          );
		 prevision.setDataFaseCancelado__c            ( sfPrevision.getDataFaseCanceladoC().toGregorianCalendar().getTime()      );
		 prevision.setDataFaseAposta__c               ( sfPrevision.getDataFaseApostaC().toGregorianCalendar().getTime()         );
		 prevision.setDataCapa__c                     ( sfPrevision.getDataCapaC().toGregorianCalendar().getTime()               );
	     
		 prevision.setCondicaoPagamento__c            ( sfPrevision.getCondicaoPagamentoC()       );
		 prevision.setCondicaoPagamento__c            ( sfPrevision.getCondicaoPagamentoC()       );
		 prevision.setChaveDePesquisa__c              ( sfPrevision.getChaveDePesquisaC()         );
		 prevision.setChaveDePesquisa__c              ( sfPrevision.getChaveDePesquisaC()         );
		 prevision.setAuxiliarFormula__c              ( sfPrevision.getAuxiliarFormulaC()         );
		 prevision.setAtualizadoPeloWorkflow__c       ( sfPrevision.isAtualizadoPeloWorkflowC()  );
		 prevision.setAtivo__c                        ( sfPrevision.isAtivoC()                   );
		 prevision.setAprovador9__c                   ( sfPrevision.getAprovador9C()              );
		 prevision.setAprovador8__c                   ( sfPrevision.getAprovador8C()              );
		 prevision.setAprovador7__c                   ( sfPrevision.getAprovador7C()              );
		 prevision.setAprovador6__c                   ( sfPrevision.getAprovador6C()              );
		 prevision.setAprovador5__c                   ( sfPrevision.getAprovador5C()              );
		 prevision.setAprovador4__c                   ( sfPrevision.getAprovador4C()              );
		 prevision.setAprovador3__c                   ( sfPrevision.getAprovador3C()              );
		 prevision.setAprovador2__c                   ( sfPrevision.getAprovador2C()              );
		 prevision.setAprovador20__c                  ( sfPrevision.getAprovador20C()             );
		 prevision.setAprovador1__c                   ( sfPrevision.getAprovador1C()              );
		 prevision.setAprovador19__c                  ( sfPrevision.getAprovador19C()             );
		 prevision.setAprovador18__c                  ( sfPrevision.getAprovador18C()             );
		 prevision.setAprovador17__c                  ( sfPrevision.getAprovador17C()             );
		 prevision.setAprovador16__c                  ( sfPrevision.getAprovador16C()             );
		 prevision.setAprovador15__c                  ( sfPrevision.getAprovador15C()             );
		 prevision.setAprovador14__c                  ( sfPrevision.getAprovador14C()             );
		 prevision.setAprovador13__c                  ( sfPrevision.getAprovador13C()             );
		 prevision.setAprovador12__c                  ( sfPrevision.getAprovador12C()             );
		 prevision.setAprovador11__c                  ( sfPrevision.getAprovador11C()             );
		 prevision.setAprovador10__c                  ( sfPrevision.getAprovador10C()             );
		 prevision.setAprovacao__c                    ( sfPrevision.getAprovacaoC()               );
		 prevision.setAnuncianteOriginal__c           ( sfPrevision.getAnuncianteOriginalC()      );
		 prevision.setAnuncianteMigrado__c            ( sfPrevision.getAnuncianteMigradoC()       );
		 prevision.setAnuncianteAuxiliar__c           ( sfPrevision.getAnuncianteAuxiliarC()      );
		 prevision.setAguardandoAprovacao__c          ( sfPrevision.isAguardandoAprovacaoC()     );
		 prevision.setAgenciaOriginal__c              ( sfPrevision.getAgenciaOriginalC()         );
		 prevision.setAgenciaMigrada__c               ( sfPrevision.getAgenciaMigradaC()          );
		 prevision.setAgenciaAuxiliar__c              ( sfPrevision.getAgenciaAuxiliarC()         );

		return prevision;
	}
	public List<Prevision> toPrevisions(List<PrevisaoAbrilC> sfPrevisions) {
		List<Prevision> previsions = new ArrayList<Prevision>();
		for (PrevisaoAbrilC sfPrevision : sfPrevisions) {
			previsions.add(toPrevision(sfPrevision));
		}
		return previsions;
	}

	public List<Prevision> toPrevisionsFromSObject(List<SObject> sfPrevisions) {
		List<Prevision> previsions = new ArrayList<Prevision>();
		for (SObject sfPrevision : sfPrevisions) {
			previsions.add(toPrevision((PrevisaoAbrilC) sfPrevision));
		}
		return previsions;
	}
 */

}
